package com.yunkeji.dao.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yunkeji.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 通话话单对象 ykj_call_sheet_info
 *
 * @author 老张
 * @date 2024-05-27
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("ykj_call_sheet_info")
public class CallSheetInfo extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** */
    @TableId(value = "id")
    private Long id;
    /** 通话类型（1：语音，201：定向视频视频,202:随机视频）目前只有视频 */
    @NotNull private Integer type;
    /** 主叫用户id */
    private Long callerId;
    /** 主叫客户端渠道号，默认0 */
    private Integer callerPlat;
    /** 主叫用户id */
    private Long answerId;
    /** 主叫客户端渠道号，默认0 */
    private Integer answerPlat;
    /** 通话唯一标识 */
    private String ucid;
    /** 通话状态（0：等待接通，1：正在通话，2：主叫挂断，3：被叫挂断，4：接听超时，5：被叫忙碌，6：系统挂断），默认值为0 */
    private Integer status;
    /** 被叫振铃时间 */
    private Integer ringTime;
    /** 接通时间 */
    private Date startTime;
    /** 结束时间 */
    private Date stopTime;
    /** 通话时长，秒 */
    private Long duration;
    /** 通话单价 */
    private BigDecimal callPrice;
    /** 主叫支付单价 */
    private BigDecimal payPrice;
    /** 主叫支付费用 */
    private BigDecimal payCost;
    /** 被叫收益单价 */
    private BigDecimal earnPrice;
    /** 被叫收益费用 */
    private BigDecimal earnCost;
    /** 备注 */
    private String remark;
    /** 录音信息 */
    private String record;
    /** 心跳次数 */
    private Integer keepLiveTimes;
    /** 计费次数 计费总次数(免费计次+收费计次) */
    private Integer priceTimes;

    // private Integer freeTimes;
    /** 免费计次 */
    private Integer freeTimes;
    /** 收费计次 */
    private Integer feeTimes;
    /** 是否已经评分 */
    private Integer scoreFlag;
    /** 通话日期 */
    private String callDate;
    /** 主叫爱洞id */
    private Long callPlatformId;
    /** 被叫爱洞id */
    private Long answerPlatformId;
    /** 受益人uid */
    private Long benefitUid;
    /** 付款人uid */
    private Long payUid;

    private String callerPhone;

    private String answerPhone;

    /** 主叫平台branch */
    private Integer callBranch;

    /** 被叫平台branch */
    private Integer answerBranch;
}
